package com.bckj.fastboot.core.extra.stage;

/**
 * 补偿阶段（用于事务失败时的回滚操作）
 * @param <C> 上下文类型
 */
public interface CompensableStage<C extends BaseStageContext> extends Stage<C> {

    /**
     * 执行补偿操作（当前阶段执行失败时触发）
     * @param context 上下文（包含原始业务数据和异常信息）
     * @throws StageException 补偿操作异常
     */
    void compensate(C context) throws StageException;
}